#ifndef LIGHTWIDGET_H
#define LIGHTWIDGET_H

#include <QWidget>

#include "Vector.h"

namespace Ui {
class LightWidget;
}
class Light;

class LightWidget : public QWidget
{
    Q_OBJECT
    
public:
    explicit LightWidget(QWidget *parent = 0);
    ~LightWidget();

    void setLight(Light* light);

signals:
    void updated();
    
private slots:
    void updateLight();
    void updateDiffuse();
    void updateSpecular();
    void updateForm();

private:
    void setPosition(const Point3f&);
    void setDiffuse(const Vector3f&);
    void setSpecular(const Vector3f&);

    Point3f getPosition();
    Vector3f getDiffuse();
    Vector3f getSpecular();

    Ui::LightWidget *ui;

    Light* m_light;
};

#endif // LIGHTWIDGET_H
